@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu  } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED736 FREE SECTORS COPYING---D1:DIRECK.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 138ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u, ө jB*DELVE:,69,3,104,157,68,3,104,157,73,3,104,157,72,3,32,86,228,162,64,169,129,)ө jB*DELVE:,69,3,104,157,68,3,104,157,73,3,104,157,72,3,32,86,228,162,64,169,12 9AhA6 B0u #B@:u-A6Ag"Du  6-?:A6,Nu$V}Xu104,162,6,160,11,169,6,32bu 92,228,96,165,20,110,243,2lu110,243,2,106,106,106,106vu!!46,243,2,46,243,2,76,95,2W}28D2:BLINK,11,169,6,32bu 92,228,96,165,20,110,243,2lu110,243,2,106,106,106,106vu!!46,243,2,46,243,2,76,95,2OVERVIEWDebug is a full-screen orientated machine language utility program usefulfor "debugging" machine language programY}s. It occupies the area usuallyused by BASIC and thus for 400/800 machines the cartridge must be removedand for XE/XL machiZ}nes the OPTION button must be held down when booting. COMMAND FORMATDebug has three types of prompts: *, ?, and (opt1, op[}t2, opt3)? and each of these forms requires a different type of response as noted below:PROMPT: "*" RESPONSE: An address\} in hex or decimal format. A number is assumed hex unlessit is preceeded by a decimal point (.)PROMPT: "?"RESPONSE: A st]}ring of characters. Typically a filename. All file I/O isto disk drive 1, so filenames should NOT include the device (i.e. ^}D1:)PROMPT: "(opt1, opt2, opt3)"RESPONSE: Select one of the choices within the parentheses. COMMANDS Key Functi_}on --- --------------------------- * Set Address D Toggle display between Hex and Disassembly`} Q Quit Debug and return to DOS G Start execution at address T Trace program execution P Prina}t disassembly E Erase memory C Change 1 byte of RAM N Change register value R Display registeb}rs B Toggle Break Point S Save memory to file L Load file to memory F Find a string in memoryc} H Set High speed display " Convert between Hex/Decimal - Scroll up in memory = Scroll down id}n memoryCOMMAND DETAILSMost of the commands are activated by single letters with prompts for alladditional needed infore}mation. However some of the commands listed below mustbe entered in the format shown in order for them to work.Tracing Prf}ogram ExecutionAfter entering "T", a prompt for the starting address is given followed bya selection of three options (F,Sg},O)?. F - Fast trace S - Slow trace (1/4 second pause between instructions) O - Single step activateh}d by pressing the OPTION button for each stepBreak PointsBreak points will stop execution and return ci}ontrol to Debug. In order to set a break point, after the B command is entered, the break point number and address must bej} given in this format: m,nnnnWhere m = Break point number (0-7) nnnn = Break point addressResetting Break}k points only requires the break point number (i.e. 1).Searching for stringsThe search function will look for any stringl} up to 12 characters in lengthand will list all occurences in memory. If the string is terminated with a comma (,) then Debm}ug will prompt for a starting address for searching.Changing RAMAfter the C command, Debug prompts for the address to chn}ange and then the valueChanging RegistersAfter the N command, Debug prompts for the register to change and then thevaluo}e. The register mnemonics are: A = Accumulator X = X-register Y = Y-register P = Processor Status S p}= StackErasing MemoryAfter the E command, Debug prompts for starting and ending address to erase.Saving memory to Diskq}After the S command, Debug prompts for the filename followed by the startingand ending address of memory to save.NOTESTr}he ESC key will abort any commandThe CTRL ESC key will stop program execution started with the G command.The SPACE BAR wis}ll pause screen scrolling.The auto-repeat function works for all keys.There are certain locations that are used by Debug t}that should not be usedby the program being debugged. Those locations are: $A100 to $C0FF $0206 to $0207 $0u}208 to $0F}ot be usedby the program being debugged. Those locations are: $A100 to $C0FF $0206 to $0207 $0 3إ  ^ _UVyz yzآWDԆ膲jxY  Xw}ZZZ ԭ @ E : 1 ) )ر  pL 걍ޡ뱍ߡ L Lb \UVx}  x^_ Xhhl L3  =l01!/L\ BLVԅ` ɛ T`y}dҩҩҎ` 1 :  Ohh`#.= O#ɛ`{hhLp&&&&Պԅ戥Lz} O#ɛ"򄉩 ذ ٰ ` {hhLpȦL膄 থԥբ `A O QԤɛ{}:  (#$ й` ԅՅ Ԡ` hhԍՍxZZZXH|}W(l ԅՅT v #ɛ TTT` Q\ থԥբ ` O}}Ԣ `5ȱ  '# $ ɤei`#I#` ʥ#9~}ԥբL` ʥL ʥ ᤠ蹥$ʈ` ʥ إL L ,$Y%` ʥ ȩ ʥ 楠$`A9` ʥ O}44)Ii8L|8囅ԥLeԥiթeԅԅiՅ Ƅ` ʥ إ 楩)$` ʥ L OԢ L` O}ԢL`(9L OԄ p ؠ#)#$ŭ0* ,$豁$)$%T }#LVʆ ئ#)#` #譃#`$#襄#`5JJJJ{Ȧ5Ԫ{}Ȧ` '#`Wh@؎hhh8hXLJnml +?<ƳI? Lbh)H(}WL3W* ɜ#hhhhXLJl^ O P8 8 ׭ԭ 8 }9dz `I b0 Թ L /ϳ` /ӳ`H****)h)`}T` : 8`(v  pL[~$Ƈ p ڨˤ  !L[ɜ𩤇#ɛ    ڨL[#}ɛ ` !`>` B#DE(HI: ɤ V0`hhLET ./`I!0}ԥLݳ׳ 㳅``L4L7@`ɀɁ ILɂ I@LɃ}@оɄдɅ𰥷@a { LŸE``ZZL8HZhZʎ}ȱ` ԅՅ :A F SO = : 1 4 ꙥ  5 gLV?}L` L@ZZZLL @L  'Ll @HȱhL󫥡/`d󭺳9h}L󫭺9hLĄxZZZZZZպH(h}xZZZZZZX@ 0Э Li i}i i`^` #%=ș#ȄI `#$򩛙% 򬥰LY ԅՅ }œ#Œ擥œŒ똑`L`T`T  TLY )! )!hhH}h`; ߬ UD 1 :  !LS ѭLS   ԅՅ 4 45 ɤ L 򬩛) Y ) LLE :}5 ߬ hhhh`Q  pL` ./0 v  & "𩛝" ԅՅ`ԥL8嶅ԥ}L` `׳Թݳ X8 񤉹ͥi` 1" O`#81$ $}4 LLpԝ׳՝ݳԝ㳘LE 1׳ݳ㳑鳝׳ݳLEL 1 O`#ɛ ,}K 턀, 8Ȅ =iiɸ#Z`KĀ ঢ#}ԥ #ʈ$#5敥ԥբ `  LWD  w0NO EL w Nԭ}O ְ w ˰ 0LH EhɈ/ ঠ#  #ʈ$#0 LYLN BDE}HILV䥖8唅啅ii`NO`NO`N`O`LwL E JKBSDE V0}`hhL HSUhD` 1 Ohh`#,ɛS젥hhLS`D ԅՅ ԅՅŕEŔ; }NO w0+NO w0NO w0 0LEH EhLQDRN*CGLSBT-=FPH.E-񣝣dL!ѭf1W٤} )8OU !Aa!Aa>^  P0p@pppB B Bֲ}Al쀀|||||}|$)3!}|||||| @@ ` @`~}}Ҵ #4ALZhw$ 0 5 $ 3 & / !8930 DP : AXYSPBRK POINT FOUND~,.0123456}789ABCDEFGHIJKLMNOPQRSTUVWXYZFIND #,X)Y,)LOAD ATBREAK KEY ABORNO DEVICE HANDLETRUNCATED RECORDEVICE TIMEOUDEVICE NAWRITE} PROTECTEFUNCTION NOT DONDISK FULFILE NUM MISMATCBAD FILE NAMFILE LOCKEDIRECTORY FULFILE NOT FOUNFILE NOT BINARNO SE}T BRK POININVALID OPCODBRK POINT SEADR RANGE ERROADCANDASLBCCBCSBEQBITBMIBNEBPLBVCBVSCLCCLDCLICLVCMPCPXCPYDECDEXDEYEOR}INCINXINYJMPJSRLDALDXLDYLSRNOPORAPHAPHPPLAPLPROLRORRTIRTSSBCSECSEDSEISTASTXSTYTAXTAYTSXTXATXSTYA???ieum}yaq)%5-=9!1 $,}0PpXʈIEUM]YAQLl JFVN^  Hh(*&6.>jfvn~@`8x} !$'*-033333333666999<<<:, A@ ' Ap A@}' A 6-6-' A@ ŠÛ++6-@:7@,,%@:7@,,$AV((Ӡ}ĺ &R6-P:'AV,867@<@,.>:&$AV,R67@<@,.>:, 4&6-?:C:,<<@:@4,X$D2:DISKFIX.BAS0 ,!ذWI)67B:,%,.ذA؁Q%9:9ROLINKEPPRINCHN1FLASESTARN1PLUSMINFIFILNULNHTOPSECASPTNSEN25NDAUXDAUXNNHEXNNERT }RAWAIRTCOSCRNDSHELBORDEBACKGNCHANDCOMGSESNADMAXSEDENDRIVSECLOSECHSECNUPROCINSUBBACSECERERRFLSE }TDSERERCLAFINUMRECOVCNTIPHELPSEPTRACPMOPDIPWRITPCHANGIINDISPLAMONBLCASBUWFLACHNGBSCRNRTSCANARPT }EMNFITITLEPSTSERELFIDTRASEDRMADATREDAT@@ A @fAp@@ }@! At @ A `@AAuVA@@AuUAGAEAV@Ay }Ax@@P@ A AP!@"A#A$AU%@&AQ'B( })*A+A,A -.@/Ap0@1@2@34A 56@7A }8@9Ab:A;AuP?A@AAPB(CAyDAwEAXFAPGB }HAIAJA`KA0LA@M@NAOPQRS@T(((UA!VAuTWA }w)XAVYA`Z[\]^@_`datbcdeA$f@ }gh p B p̠ᠨéǠͮ }? <(- 㣬ìĬͬЬѬҬӬԬנ ?$V A 8(% ٠more rin }t Screen Stop< H"@L V @0(6-+"AU,$2$@d!B7t@d$$d()(A` } A`i6-?:%, %$n 6.$6-F:,6- &q% 6-F:,6-F:,6-$%% &r 6-F:,6-F:, }s 6.$67,.=:,tI6-P:',%#67B:,%,.7<,36-&+&,$%F67B:,%,.7<,I$x7Ad&6-@1 }7ٺ蠧} %(>:%%,a6-F:Ad,<+ &,%+"@9)"@`,A5MF:%, % }%[6-@1&a %# ( +"%,& )#$K:$ 6-6-%A% }( 6-!%%%@0$((} 6-Aa6-%&> 'AY@4*$> }K@e6-F:,$,%:%@9K6-?:C:hLS,,6 @e } 6-F:%,,"A826-6 9 6-"!6-A %A $+6.,SD/96.,ED$% - $% }`Ai!3ArAS?AsQAvA']Aw`$6-%$+ , } % 6-& )!6- %$%%к 6-6-6-H 6- AP }6-6-) A /6->F:,"A8D6-H !"@)"Ab ! " 6-* *"( }( %$ ( ̠ԡ 51(! ĠҠ (1-)5 -#( })6-- "3/( **** SECTOR  IS WRITTEN! ***3 ,/%(*** ˠŠҡ ***+6-/ 68.(% } *** ˠӠŠġ ***46-8 @-#(ŠӠԠġ)6-- J$ ( ĠŠ }$ T%%( ҠΧԠġ^>    #"A@+* 3(6$>қ!!к }>' 6-6-6-A&6-%*66-AD>6-% Au6- % A@6.6- }ЛH 6-B:,2"@*"*@6A@H!)$+ ,AP! 6-! \\+"@C })"AU,%$+"@E,%$+"@r*(,%$+"@,A A0QQ+")",%$+"@w,%$+"@h,%$+" }@,%$+"@g,"@*"  5 "6-%+)"@6,#"56-%+"@6,$aS+"AU },%$+"@*(,%+!,$+A &@0$+@:,"@6,,Ba"A.pG+",%+"@6,%$+!@G* @ }X,A AAp7<,4$*!@d* @qA86"A&( )6.7<&+!,,/"66. }B %L#67%<%,.>:,(>:,# %` "6- AP j$)%6-$ ## }웦= 6--B:,!7<,/936-$%A:7<,,= A6-$%@:7,,&@U 6.=:, " }$##$ 6-6-A:, )!$6---ɯϠ$6- }P:',6-P:&+$,,!$$ZZκ堫ЮD 6 }-% 6-+(),$6-06-A> AP%$D %* *( Getting Sector Data...7 -6-6-?: }%,$6-+*,*6-1F:,7 &O 6-6-%O%+"A`,%$+!A`* Ai,A PA 0B &8( }7@4,٠  ()B A ;'(àҺ360 $168 ;6-F:%,%$F:%,;6- }%A!"A1( Ck.Sec1024; A I6-P:',6-&$ &.(%$ :@5?(I A , }&!(Ժ7@7,',( / &"( Ժ7@7,*%/(, &( ̣ '@7 },(  F:,!(7F:,%,*0 -%&(Drive #$)-(0$4  UUźש }뮠 W 6-6-@d6-!6-'6-06-+(,66-N Au&@u$+),W( }% A 1("ŧ٠٠٩5 =%A  & %6-?:, 6-& < 6-F:,86- }%+!,%+"AD,%@$+"A8,< HHźé򮛠M 6- }6-%6-6-&6-+(,,6-D Au&@u$+),M(%@ -%(7%,@(' 嬠 }&&(** Sector Data Changed **. -%AR ".ARH2B:,!%*F:@,!*F:@ }, %A@`:-%A(7,H(5 A A@d+A5%9 6-6-C:,%9(C }hanging Sector Data... 6-?:<, % %;;кȩ˭̠󮛈9 6- }%A%6-%) 5Aa9 oJJҺĩﮛpC 6 }-6-6-!6-A`-6-AF7 AP=6-C6-z6 -6((ã ů ̣ / % } -"6-?:Ax#,)F:,/ &. @0 %"(* Ah. %@  %W<<ԺЩ }X=  6-33A0=( ǠΡb=6-F:%,%F:%,$7- }%%+"AF)"@,=6-l.-%@96-F:,$!%.6-&&v+!@c#!@ApP+6-% } 6-%%167,.>:,6-% 3-6-%@@1  6. $?66ĺͩ }宛@@ 6-6(' ٠ Sector # or ame : @J&))6- TT 6-6-@66- }+(,$6-< Au&@u$+),G6-?:%,NF:,T &^E )( Next Sec: - 9A0?E }h- -%( File #: #6-' -6-r2 6-A:,!@c$6-( 2 A@|`6-?:A,1( }ǠҠӡ`( FILE# is: F:,, NEXT SEC# is: (F:,$%F:,6-%6-F:,%F:,$& %!" }%  - A '#ooźԩҩ }宛(#.6. Ҡ"6..6-@2#< "6. Ҡ*6.66-Ab<<#0 6 }-,( What File # 0 F#? 6-6-A:,%6-P:',%Aa1!Ah5 ? A P#6-&P:',$ }6-$%Z#E 6-6- AP0(  <<~>>?6-?:<<<,E6-d# A 6-F:, &n#. F:,6!}-F:,6-F:,.(F:,Ax#N @0A;(}<<~ҠŠ>>D6-?:,N A`'??Ժ!}ө宛'<2( ԠנŠ>:%Av, < A@' 6-&$!} )! $'7 & A6- )-%&/(76-!.'1%&$-%%&!(-%%$1 * !}ԛ*_3( Ϻ ASIC, OS, enu-D , or 7 C"@hOARU._ B +`@f*@w'!}A3"@w= B N6. D1:MENU*.*\67<,.=:,`% + + .::ΠŠ̠Ϡ!}Ġٛ.Y3F:A(,"A*F:AD,"@@B `E@@O+@Y @P.A@f'A!}@@9A@@KA @]A@@oAVA&(@ analog.(@!} presents1-@@K(@ ]-@ @m(@by(@ tony messin!}a.`AR@6(ӪЪêŠ`(%Refer to the ANALOG COMPENDIUM (pg75)/W,($or ANALOG Magazines ! }#8 (pg19) and #9W(%(pg33) for instructions and tutorial./\ACA'AD@@9A(AKA)! }@@\% D:DISKTOOL.4/;A',;@f,&/ee6.[ S039  &       L~  ! }h`8  90/nn67@,.[#멼 9# &  L  9#8`ţ ! }ɼ :/nn67A,.[ 9#`) 0ii0` }ɀ ɼ ɠ.`  9# 9# `HJJJJ h `i! }D/nn67At,.[  ``` 9#$ 9#`hhh͠ oiȱ ȱ oHL80N/nn67Ae,!}.[ `Hȱ edh e d`L4  ` S0ͩΠ͝ ͍ȱ͍ȱ͍ȱ͍X/nn67AV,.[ȱ͍,!}DLP%U ,*,2L1 +  /#     9# b/nn67AG,.[     9# !}  +    +    +    l/nn67A8,.[9#  i͐Ω 9#!} L 9# i  L v/nn67A),.[`L? SL4  L?** z!}L?zH)hJJ`<hL hh /nn67A ,.[w#h v#hhhh SL< ͍͝ ͍ ͍͍u#L!}#, !~/nn67A ,.[ !  /# !} 'V !L*! %& !& !s# t#  S ' ! L0nn67A!,.[< %  {  !Ls%#xh  W ! }S & ! %L*! % !& ! u#L@ 0nn67A"v,.[R`N n jj8jH i hYx#x#{#{#!!}|#`Pass #1-Checking File C*0nn67A#g,.[ondition IS NOT DELETED!!, CANNOT BE RECOVERED!!FILE INTACTPass #2-!"}Recovering Fil40nn67A$X,.[eDIRECTORY ENTRY DONEREALLOCATING DELETED SECTORS HAS BEEN RECOVERED!ERROR IN VTOC!#}>0nn67A%I,.[ WRITE!!ERROR IN VTOC READ !!FILE READ ERROR!DIRECTORY READ ERROR!DIRECTORY WRIH0##67A&@,!$}.TE ERROR!Q0""̠R0LL6.Bhhhhhhhؠ<<ɼ80 !%}`\0\67@0,.>:@4,367@6,.>:AU,Y6-?:C:,HHHɛ%$ %5}  k  E! ;"L z"hhh(`@+ȱɛ#D EX"Lō @+`ꍧK L Lt- %6}@ ɛ)" J a{I 0L& `H-  - @ Li - @ h` 0/. 'Lo {! . 0 L %7}(` (轺 Lm 8`REN.UMBER"DEL.ETE&DI.RECTORY &RENA.ME 'ERA.SE!'LOCK.#'UNL.OCK$'QR.EF'REP.LACE%8}@(XR.EF)SI.ZE*MAR.GIN+DO.S?+H , -)@) )&) e, M,L!h`|!w" h8`+:"%9}+ #,ɛ0:Ly!N+:"+莗+ɛL! إH ٮ+ԝ+՝+hM:"L!,ɛ! "Ly!L!ȱPE%:}SLy!9"Lp!I B, , hhh -LLp!˩̩ͩΩnϩ -5- e, M, B V u, Y, @x"s#+` H H`+%;}+0E+0@+0;) ,ˍ+ȱˍ+) ++++) ++L"L-+ +橛M , , +L* % +L#ˑȱ%<}ȩȑ % +L"ȑ %͍-͍-+-+- -Lf#ͩ͠͠͠+ % %L%+18ͥt#o$Π͍-%=}͍-+-+- -L"% %+ͭ+ȑ %+m+++m++L% % , %iϥiРϑȱϑȱˍ+iϥiб%>}ˍ+ȱ #I#L$+͖+L# +L%ȱȘHihLR$h '%L$ $L$ȱ LX$ p$k%, %?},ȱ,Hi hL$h '%iL$ $L$ $Lz$ L$ , ,ИH˅ȱ˅h %`%@}+L%8 ȱ '%L$L*L-L-He˪i ٥Ս-ԍ-+-+- -I %ȱ %LSl%g%A}&%ˍ+ȱˍ+ %L%ͅȱͅ hHe˪i %h`iͥi`i`8``&#MH ++ԭ+%B}L%&VMH +&i&$ M , ,h`)`) ++++ , +L& &LO& +L&˅ͥ̅ & Ll& +%C}Llh&c'& +8˅ϥ̅8͍+΍+8++ - @+`ˍ-ˍ-+-+- -`ˍ-ˍ-+-+- %D}-` ')+L-i01' D'EBJ V0H& , j'0&  MȌ&& ,ک&M , B, %E}' u, Y, @d'_(+`L- iMDiEHIB V` B V`D1:*.* e, B," -ȘeDiE" -ѝB V0 u,%F} @+`L- J- ++ , ,0Η+ U-L' B, Y, u, @+`ɀL-ȩ" -LJ)Ș+Ί+Ό++A[L-̌+ [%G}A:1(`([)$̌+լ+$( +L?(+$( +L?(+ + + Y)LO)+ Y)LT)8+%H}++m+˭+i8+++m+ͭ+i8˅ϥ̅ - 8+m+i୓+˭+̭+ͭ+έ+ϩ - %I}@+`L-L-L-e\)W*ύ+iЍ+ + F+L)00Șeͥͅi F+إ͍+΍+`8` J- ++ ,L*%J}+ ,L* , , +L)+˅ȱ˅ȱˍ+ȱˍ+ȱ60)ȱ0$̒++͑+L) , ,͏++L*+=&+ԩ%K}թ +ѥυԥЅ +X*S+&i& M ,0: , +L)&婛M ,0 L)& M , B, u, Y, +`ɀL- e, M,%L}9"ԅ + , , +8刅ԥ剅թ +80劅ԭ1勅թ +M , u, Y,dͩ+ ,`)+)9+%M}+R+S @+`.`)A[T+g+ńŅ8``CLR+,e˅˥i̥̍-ˍ--- -``ͥ%N}`)/MHH) h0M)Mh`˥`i`Șq˨` F+!)M(0eͥͅiΩM`8` %O}B V`@y+`@y+` h+x+`h+ x+`,- -(+ ,`mD$Ei%8H+(I)`9"%P}םD,EJB V`P?9" BxHIMDE V`( M&`+`` u, Y,3ͩ- ,8`?"ERROR- %Q} ";PEEK(203)9"} `9"BM B V䩝D-ExHI B -|.V J-+`-͠%R}0-L-0L-8L-`-- -- p `--p`I `8˪̨Ϙа :.L. .`ˑ%S}ˑ`e̥̅e΅Τ ˑΈˑ` K LE}..ԽձԙtHtHt%T}hihiJLk. ˑΈˑ` K LE}..ԽձԙtHtHt$*** EXTENDED BASIC TUTORIAL *** PART I. INTRODUCTION EXTENDED BASIC is a programmer's aid package which adds )V}12 useful commands to BASIC. The commands are Direct Mode commands and function as if they were included within the)W} BASIC Cartridge themselves. Various types of commands are DOS related, editing and reference. SYSTEM REQUIREMENT)X}S ATARI 400/800/XL/XE 32K Ram ATARI 810 Disk Drive or Equivalent ATARI BASIC Language Enabled (Cartridge in)Y}stalled) Optional Accessories System Printer LOADING EXTENDED BASIC. 1. Turn the computer off. 2. In)Z}sert the Basic Cartridge in the left slot (if 400/800/1200XL). 3. Turn on your disk drive. 4. When the BUSY light goes )[}out, open the #1 disk drive door & insert the EXTENDED BASIC disk (You should have previously copied the "EXTBASIC.ARS"fi)\}le to this disk and renamed it to "AUTORUN.SYS". Also, Atari DOS must havebeen written to the disk with the "DOS.SYS" file b)]}eing present.). 5. Turn-on your computer and your TV set. The program will load in memory and start automatically. )^} 6. After the system boots the top line on the screen should say: Extended Basic (in inverse text) You may n)_}ow edit and run Basic programs normally. PART II. USING EXTENDED BASIC CORRECT METHOD OF INPUT. All)`} Extended Basic commands must be entered in Direct Mode and there can be only one command per line. EXAMPLE: 1) DELETE )a}10,100 2) DELETE 10,100:LIST 10,100 3) LIST 10,100:DELETE 10,100 The correct method of en)b}tering the command is Example 1. In example 2 the DELETE command will be executed but the LIST command will be )c}ignored. In example 3 Basic will return a syntax error and neither command will be executed. COMMANDS )d} The following commands comprise the Extended Basic program: EDITING DOS UTILITIES REFERENCE CONTROL RENUMBER )e} DIRECTORY QREF @D DELETE LOCK XREF @E REPLACE UNLOCK SIZE @X )f} MARGIN RENAME ERASE EDITING IN EXTENDED BASIC. All direct mode input to BASIC is conver)g}ted from lower-case to upper-case and inverse to normal. The only text that is not converted is the text with)q}`B%DOS SYSB*)DUP SYSBSBASICOFFOBJBTBASICON OBJBUBLINK BASBXDEBUG DOCB0vDEBUG OBJBDISKFIX BASBtDISKTOOL4 B!4EXTBASICARSB]UEXTBASICDOCBREPAIR OBJBUSUPRCOMPBASin double quotes. PART III. EDITING COMMANDS RENUMBER The Renumber command takes the program text i)r}n memory and renumbers it according to the parameters entered with the command. Extended Basic will renumber the pro)s}gram even if the program contains variable branching and unreferenced line numbers. Variable branching and unreferenced )t}line numbers are displayed during the renumber process. FORMAT: RENUMBER [strt][,new][,inc][,output] Short hand )u}for RENUMBER is REN. PARAMETER EXPLANATION strt Starting line number, the default is the first line of )v} the program. new New line number, the default is the starting line number. inc Increment)w} between line numbers, the default is 10. output Device which the error flags will be printed, valid )x} output devices are E:,S:,P:. The default is E: EXAMPLES: RENUMBER 10,,20,"P:" The program will be renumber)y}ed starting at 10 with increments of 20, the error flags will go the the system printer. REN.,,5 If the fir)z}st program line was 100 then the program will be renumbers starting at 100 with increments of 5, the error flags will ){}go to the screen. RENUM.,1000,,"E:" the program will now start at 1000 with increments of 10, the error )|} flags will go to the screen. RENUMBER ERROR FLAGS The error flags are printed whenever a variable bra)}}nch or a unreferenced line number is encountered. the types of error flags are as follows: V/1000 The)~} V indicates a variable branch and 1000 is the line number it occurs in. #/40000/1000 The # indi)}cates a unreferenced line number, the 40000 is the unknown line number and the 1000 is the line )} number it occurs in. DELETE The DELETE command will delete all line numbers within the two )} parameters. FORMAT: DELETE strt [,END] Short Hand: DEL. PARAMETER EXPLANATION strt Start)}ing line number. end Ending line number, the default is the starting line number. EXAMPLES)}: DELETE 10,100 Lines 10 thru 100 are deleted. DEL.20 Line 20 is deleted. REPLACE Th)}e REPLACE command will replace a variable name with a new variable name. FORMAT: REPLACE "old-var","new-var" S)}hort Hand: REPL. PARAMETER EXPLANATION old-var Old Variable Name, this must be a valid variable name. ne)}w-var New Variable Name, this must be a valid variable name and unique. If old-var is a string)} then new-var must be a string. The same applies to array names. The format of the variable name is described in )}the BASIC REFERENCE MANUAL. ERRORS RETURNED BY REPLACE ERROR CODE EXPLANATION 22 Old Variable Name)} not found. 23 New Variable Name already exists. 24 Invalid Variable name. EXAMPLES: REPLAC)}E "A$","B$" All occurences of A$ is replaces with B$ and A$ is removed from the Variable Name Table. REPL.)}"ARRAY(","DARRY(" All occurences of ARRAY( is replaces with DARRAY( and ARRAY( is removed from the Variable N)}ame Table. REPLA."COUNTER","LCOUNT" All occurences of COUNTER is replaces with LCOUNT and COUNTER is re)}moved from the Variable Name Table. MARGIN The MARGIN COMMAND automatically sets the left and right margins fo)}r you. FORMAT: MARGIN [left][,right] Short Hand: MAR. PARAMETER EXPLANATION left Left Ma)}rgin, this must be greater than or equal to 0 and less then 40. The default is 2. right Right Margin,)} The must be greater than or equal to 0 and less then 40. The default is 39. EXAMPLES: MAR.0,39 )} The margins are set to the extreme left and right edges of the screen. MAR. The margins are set)} as they are after System Reset. PART IV. DOS UTILITIES. Five Dos commands are included in the Extended B)}asic program. They will allow the programmer limited file maintenence. ************* NOTE ***************** The)} DOS command has been disabled for the reasons of giving the programmer the most free memory, and that DUP wi)}ll overwrite Extended Basic's memory. If you need to go to DOS the following commands will get you there. @X )} DOS DIRECTORY The DIRECTORY COMMAND will print the Directory of a Disk to the output device. )}FORMAT: DIRECTORY [drive#][,output] Short Hand: DI. PARAMETER EXPLANATION drive# Disk Drive number the contains)} the disk you wish the directory of, the default is drive 1. output Device in which the printed output)} is to go valid devices are E:,S:,P:. The default device is E:. EXAMPLES: DIR. The directo)}ry of drive #1 is displayed on the screen. DIR.,"p:" The directory of drive #1 is printed on the system printe)}r. DIRECTORY 2 The directory of drive #2 is displayed on the screen. LOCK, UNLOCK AND ERASE )}FORMAT: LOCK"D[n]:FILESPEC[.EXT]" This command will lock the selected file, or files that meet wildcard sp)}ecs. FORMAT: UNLOCK"D[n]:FILESPEC[.EXT]" This command will unlock the selected file, or files that)} meet wildcard specs. FORMAT: ERASE"D[n]:FILESPEC[.EXT]" This command will erase the selected file, o)}r files that meet wildcard specs. PARAMETER EXPLANATION n Drive number. FILESPEC Filename & option)}al Extension. RENAME This command will rename a file with a new file name. FORMAT: RENAME"D[n]:OLDNAME.)}EXT,NEWNAME.EXT" PARAMETER EXPLANATION n Drive number. OLDNAME The old Filename. NEWNAME The new )}Filename. PART V. REFERENCE COMMANDS Three reference commands are included. They are QREF, XREF and SIZE.)} QUICK REFERENCE The QREF command is a quick dump of the Variable Name Table. When the Screen fills up pr)}ess any key to continue to the next screen. FORMAT: QREF [ouput] Short Hand: QR. output Device in which)} the printed output is to go valid devices are E:,S:,P:. The default device is E:. CROSS REFERENCE )} The XREF command is a cross reference of all variables used in the program. It will print the variable name , and all )}occurences of it. FORMAT: XREF [output] Short Hand: XR. output Device in which the printed output is to)} go valid devices are E:,S:,P:. The default device is E:. EXAMPLE: XREF"S:" A$ 2/100 1/110)} 10/1000 A$ is the variable name and in the second line the 2/100 indicates 2 occurences in line number 100)}. The 1/110 indicates 1 occurence in line 110. SIZE The size command requires no parameters. It will ret)}urn the number of variables in the program, The program length and the amount of free space remaining. )} FORMAT: SIZE Short Hand: SI. OUTPUT FORMAT: number of variables / program size / free memory remaining )} EXAMPLE: SIZE 12/500/28500 This indicates that there are 12 variables in the Variable Name Table.)} The program length is 500 bytes and there is 28500 bytes of memory remaining. PART VI. CONTROL COMMANDS )} There are three control commands which modify the control of Extended Basic. DISABLE The @D comma)}nd will temporarily disable Extended Basic. This command should be used before running any program that contains an)}y INPUT statements. FORMAT: @D ENABLE The @E command will renable Extended Basic. This is the )}power up mode. FORMAT: @E TERMINATE The @X command will terminate Extended Basic in case it i)}s not required of more memory is needed. A NEW command should be done after @X to reclaim lower memory. FOR)}MAT: @X REFERENCE CARD EDITING COMMANDS COMMAND SHORT PARAMETERS RENUMBER REN. [strt][,n)}ew][,inc][,output] DELETE DEL. strt[,end] REPLACE REPL. "old-var","new-var" MARGIN MAR. [left])}[,right] DOS UTILITIES COMMAND SHORT PARAMETERS DIRECTORY DI. [drive#][,output] LOCK LOC)}K "D[n]:FILESPEC[.EXT]" UNLOCK UNL. "D[n]:FILESPEC[.EXT]" ERASE ERA. "D[n]:FILESPEC[.EXT]")} RENAME RENA. "D[n]:OLDNAME.EXT,NEWNAME.EXT" REFERENCE COMMANDS COMMAND SHORT PARAMETERS QRE)}F QR. [output] XREF XR. [output] SIZE SI. CONTROL COMMANDS COMMAND EFFECT )} @D Temporarily disable Ext.BASic. @E Renable Ext.BASIC. @X Terminate Extended Basic. ECT (w #00000llllllll~`~~fl0fF68of;00000000f< 800000 0 ~~`0 -}0`0xff|ff||ffffff`x`ff`x``||~ZZ~ xs6<8<6sx00006~-}||fff|`|vff|xl|||<xx0f<8pp8?-}ww<~~~<x`x`~<~-}~<0~0 ~ <~~<<>f>p`|ff|<```<>ff><>ff>|p`|ffw8<  xp`lxlf8-}<fkc|ffffff>|f```>`<|~ffff>fff<ck>6f< x~ 0~<~~<-}~x|nf8x8&l;==7lLJ&&K&L&ʩ * d5I&&&© 1 -L*I&˜ '-} 4&0& 1&& *L*& & 1 -& & 1 - - *`RUNTIME ERROR AT LINE &&Lr*-}+ +L&` '& &L&PROGRAM STOPPED&&Ńł ȱ`iL'HH 1*L-}/ r* . 1 + '. . . 1 . ' 1 + . 'hhL.ʥ`HHhh`8-}L'u`Huh` Lr*L' Lr*L' ) . (-} . ' r* .Lo* ) . ' , ( . ' + ' r* ' + 1 , . o*Lr* ) ' ' , (-} . ' + ' r* ' + 1 , . (( . o*Lo* ' 1* '.L/` ) r* .L. ) . . + ' . -}' ,L' ) ' , ' . + 'L'J&K&L& ) 1 1,L&eJ&iK&`L&-}8LM& . '.L&`ʔȱȱȱ 1*Șe惠 惨6,*6-* L*HH-}hh```Lo*ʱ` ** &JL&J *HHl JLw-} TO BOOT FOR DOS TO RERUNp B V8+` +ȱLr*&&8558凅刐SJj)e-}e`ффiiL#+8L#+ LM&uuuLr*8` +Lr*-}iLr*豂Hȱh`p +Lr*+H+ BHI+ 4 -h`8` ,L, ,-}#` ,0 ,0L, ,0` ,0L,L,`޵` `Ȕ`ʔ-}惥u`+ BHI DEH 4 -HyhLo* + -`+JJJJ`d-+e- +-}- c-0 c-Lr* J-Lr*` f-H J-h 0 c-`L+8 0ƅ`66&Ln-HH` B VhH)Kh)0 IJ-}D-EB 4hLr*S:+Lr*TUVLo* -`++L+ -8ɰɅ +`ʱȱȱ`ȵȵLr*-}Lr* '. . .ʥ . . '. .L3 '. . . . 1*uȱuȱu W* 1* .0 @,-}L3 ȱLr* T,L.ʵ`eeLM&HHhh`ؐHH 1*L/ r*-}HH . .6 +i i .i i .hh . . 'hh .`HH 1*% r*HH 1L-}'/ 1* '. LM& .6 + . +` 1* '.ޠ . 1 +L/  o*Lr*H+ B Vh` ҵ  o*Lo*H-}+BHI 4+h+L1 g0+KJBD0EH 4h o*Lr* r* '.0Ɔ򩛙0`-} -H`B 4h`00L1Lr*Lr* +`H o*hL11HH eHHƆeiH -}'.lꦆ 1Օ`0  L,`8`|1rd-1e- (- 10|1L1|10|1`1 r* '.1 1-}`+6-1L1801LM& + 1 . 1 1 ++ 1 +Ɔʭ1 +`ʕ`66`HHH-}66666uuuhhhLr* +愵 ' + 'I 1 28-}0/66&&&`uuu` 2 2Ј 2 o* +`@32@2 .2222-}2 LM&ȥ2i223`L*32 3`LM&2@82ƅ3 ȱ222` w-}3L?33L?3H3 2h`1+ %  88L3 o* o*` o* o*` -} o* o*` 3$' 3"0 30 !4L, 4L, 4L,L1L14 1 '. .4444`H+? ++HI-}4D44E4B 4H4h` VLM&4` D44 14α44 1L4 D44LM&44, α44-}4 148e44α4 11L1  'Lr*hh iLr* (5L2 (5L*42&&ȱ0 -}5Lw5 555&& L5&&`i`J&&K&L&` +ȱ&&%8-}e慱HȱhױL&iJ&iK&Lr*+ BH Vh 1LW*+&BH 4hN 1 W*L 1MLW*+%BN-}LMH 4hLo*)}*1*N*W*v*11+,J2+,a,s,@,/,T,9,H,),**++++,,-------6.c./x///2:3}10000)/-}//0090.444(4!4440&D'@(f(()))V)4440T5\5A1+1d5355&(6@6j6S1;=ZU=d=n=o=p=s=u.>\>\>>>-}>(?^???@@@j@@@ AA A|AAA,A6A8B:"B<LB>zB?BJCKCOMCQxCTCYC^ChC-}rD| D}RD~DDDDEZEnEEEE F FaF&F0FX)Gb)GcDGdtGgGhHikHvH{HH&IgII-}IIIIIJ,J0J^J^JJJKaKKLDL[LqLqLLLPLZLdMn[MwsMtMtMMM-}NBNSNpNNpNzNO&O@O'AOt'AOy'GO~'MO'O'O'O'O'O'P'0P'RP'P'P'P'P(P(Q (:Q(>Q(IQ(-}Q(Q(Q(R(R#(&R((?R-(TR<(mRF(mRK(RM(RP(=SU(SSZ(S[(S\(S](S^(T_(LT(YT(YT(pT(zT(T NTNTNTNTNTNTNU-}NUN>UNZUNUNUNUNVN!VN!VNJVO]VOwVOV$OVKOVLOVVOVO&WO&WOP*R } "-}  Insert disk with   file for repairs -}  into drive # ONE   then press  -} <<@R<}&-}&٠ƠӠ&P*'*<<<(*-}} The file for repairs is ]}P*Not all programs will RUN oncerepaired. Most will, but thereare programs, that while unde.?}rrun, access the very structurethat causes unlistability. Bycareful modification of the.@}now listable code, you shouldbe able to get around this.P*If a program SAVES its string.A}and array table, you will losethis data. This is quite rare!THE REPAIR STATION's greatest.B}power is repairing those filesthat have been made unlistableINTENTIONALLY upon programming.C}or when SAVED originally.P*Though THE REPAIR STATION mayoperate with some other DOSes,to be sure.D} of error-free use,load it using unmodified ATARI DOS II 2.0.THE REPAIR STATION was writtenin BAS.E}IC and machine language.It was then compiled using theABC compiler. It will run withor without BASIC ins.F}talled.Sincere thanks to MONARCH DATASYSTEMS, Cochituate, MA 01778for having granted license to.G}use their copyrighted productsin the production of softwareintended for release in thepublic domain..H}P*This program is intended toenable the user to examine ormodify legally owned softwarefor.I} purposes of self-teaching,maintaining compatibility, andother strictly legal purposes.Please show resp.J}ect for thelegal rights of others whileusing THE REPAIR STATION.Feel free to address inquiries.K}or suggestions to the author: Z to onlyD&( ENTER P to onlyD( ENTER B for 2`}N$( TO CHANGE THE NAME OF FILE N(% #1,2,or 3 type the approp. #3#( or just for MENUs)3 2a}A+4P)4B%%P:+6-4B)4D6- 416- A  426- A02b} 436- A@)A" 4 A` AP, AP6 @ A2c}J AT A %^A0r AP| A`"A!A2d}p!A@& 6.=:,( A`! A AP! A 6.( ( A` A2e}( A 4 A0 A6. ( A` A! AP A`! A&> AP2f}!67<%,.+ A 16-; B>$0> A!67<%,.+ A 16-; B>$D0-B2g}:,67<,.  "$0ÛNҠX/((ERROR--CAN'T OPEN %6-/ A0b/((ERROR--CAN2h}'T OPEN %6-/ A@lB((ERROR--CAN'T OPEN %6-BF:A,AaAPv F:A,"AaA02i} F:A,A6A0#6-B #"B A$ F:A,A6A0#6-B #"2j}B A$( 6--%(7<,4 A@ 6-% 6-A:7<,,$(2k}(% $ - ((-( END OF FILE*-6.D1:*.* 67<,.7<,* A->3( (32l}( JOB ABORTED WITH ERROR #F:A,HQF:A,"Aa@(# MUST POKE 1801,4 THEN RE-WRITE DOSQ( AND RE-BOOTR2m}\G($(ENTER D1(or D2,D3,D4) for=(the appropriate menuG A`f) )67,.:*.*p> A 2n}%)%%,(/(4(> A z: %(7%<$,4 FREE SECTORS+(0(: A  ( A2o}  A 0% B$ D1:SUPRCOMP.37%<$,4 FREE SECTORS+(0(: A  ( A0C